package com.clothing.service;

import com.clothing.entity.Article;
import com.clothing.entity.Article.Status;
import com.clothing.utils.page.Page;
import com.clothing.utils.page.Pageable;

/**
 * @ClassName: ArticleService 
 * @Description: TODO(Service) 
 * @author Charles.Tao 
 * @date 2017年9月6日 下午3:42:45 
 * @version 1.0
 */
public interface ArticleService extends BaseService<Article, Long>
{
    /**
     * @Title: findUserPage 
     * @Description: TODO(分页) 
     * @param @param userId
     * @param @param status
     * @param @param pageable
     * @param @return 设定文件 
     * @return Page<Article> 返回类型 
     * @throws
     */
    Page<Article> findUserPage(Long userId, Status status, Pageable pageable);

    /**
     * @Title: findPageByTypeAndStatus 
     * @Description: TODO(根据类型或状态获取文章)
     * @param @param articleTypeId
     * @param @param status
     * @param @param deleted
     * @param @param pageable
     * @param @return 设定文件 
     * @return Page<Article> 返回类型  
     * @throws
     */
    Page<Article> findPageByTypeAndStatus(Long articleTypeId, Status status, Boolean deleted, Pageable pageable);
    
    /**
     * @Title: browseArticle 
     * @Description: TODO(浏览文章) 
     * @param @param id 设定文件 
     * @return void 返回类型  
     * @throws
     */
    void browseArticle(Long id);
}
